home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
UTIL
/
DISKUTIL
/
DISKCOPY
/
_files
/
_diskclon
/
clonedoc
next >
Wrap
Text File
|
1991-07-02
|
9KB
|
189 lines
Documentation for Disk Cloner Module V1.02
------------------------------------------
********************** Incredibly boring Copyright Notice *********************
* *
* All program code is the exclusive copyright of Richard K. Lloyd. *
* The program and documentation for Disk Cloner are freely distributable *
* and should not be charged for under ANY circumstances. *
* *
*******************************************************************************
Installing Disk Cloner
----------------------
The Disk Cloner is installed by typing *DiskCloner. There, now that wasn't
difficult was it ? If you get a 'No room in RMA' error, then type *GOS and
try again.
So what does Disk Cloner do ?
-----------------------------
*Help DiskCloner will reveal a little about what the program does. It copies
EVERY error-free sector of an ADFS disk from one floppy to another, including
the unused area of the disk.
So why use Disk Cloner rather than *BACKUP ?
--------------------------------------------
For normal work/data disks, I would stick to *BACKUP. However, if you
accidentally delete a file that was at the end of the floppy and you want to
make a backup before you try to recover the file, then *BACKUP may not do
the job, whereas Disk Cloner will. Disks corrupted mid-way cannot be fully
backed up by *BACKUP, but Disk Cloner will manage to do so.
Of course, the more unscrupulous among you will have worked out that
many commercial software protection systems employ the fact that *BACKUP must
check the free space map (hence the 'Bad FS Map' on some commercial disks)
and that it only backs up the used section of the disk (data is therefore
secreted in the 'unused' area of the disk to fool *BACKUP).
Version 1.02 now retries bad tracks that V1.01 used to skip over. Each
sector in the faulty track is individually re-read and any that are OK will
be salvaged in the write pass. Faulty sectors are marked with a ?.
Anyone can 'misuse' Disk Cloner and use it to backup much of the less
well protected commercial disks. The author of Disk Cloner assumes no
responsibilty for misuse in this way - and you deserve to go to jail if you
sell pirated software.
The *Clone command
------------------
Syntax: *Clone <source drive> <dest. drive> [D|E|L]
The only Disk Cloner command implemented so far is *Clone, which copies an
ENTIRE ADFS disk (unused space included) from the specified source drive to
the destination drive indicated. You may not specify a non-existent drive
(the *Configure Floppies setting is read to check this).
The optional parameter specifies the disk format type to be used. These are:
D to indicate contiguous file 800K ADFS disks (default if omitted).
E to indicate non-contiguous file ('Extended') file 800K ADFS disks.
L to indicate Master 640K ADFS disks.
Please note that Extended format is only available in RISC OS.
If the source drive contains an unformatted disk (Disk Cloner assumes that
unformatted means 'unable to seek to track 0') then the command is aborted.
However, if the DESTINATION drive holds an unformatted disk, then the first
read pass is performed on the source drive and Disk Cloner then asks if you
wish to format the destination disk. If you press Y (twice - because the OS
format also asks for confirmation), then the disk is formatted to the type
specified in the *Clone command (i.e. D, E or L...with D being the default).
The first write pass then starts and the cloning continues as usual.
Application workspace from &8000 onwards is used during the copy, so you
are asked for confirmation before the operation starts. Intelligent memory
checks are made, so single-floppy A440's can copy a disk with only one swap.
V1.02 has improved memory management to cope with the new bad track retry
system.
ESCAPE may be pressed AT ANY TIME to abort the command - this is highly
useful if you mess things up !
If the source drive is the same as the destination drive, then you will be
prompted for a keypress to allow the disk to be swapped.
Disk Cloner Event Table
-----------------------
The following is a table of what happens with different combinations of disks
when using Disk Cloner.
+-------------------------+-------------------------+------------------------+
| Source Disk | Destination Disk | Event |
+-------------------------+-------------------------+------------------------+
| Error-free 800K (D) | Error-free 800K (E) | OK, converts E to D |
| Error-free 800K (E) | Error-free 800K (D) | OK, converts D to E |
| Error-free 800K (D|E) | Error-free 640K (L) | Errors, unusable |
| Error-free 640K (L) | Error-free 800K (D|E) | OK, unusable |
| Faulty 800K (D|E) | Error-free 800K (D|E) | Errors, mostly usable |
| Faulty 800K (D|E) | Faulty 800K (D|E) | Errors, hardly usable |
| Empty drive | Any disk or empty drive | Aborts immediately |
| Unformatted disk | Any disk or empty drive | Aborts immediately |
| Any formatted disk | Empty drive | Tries+fails to format |
| Any formatted disk | Write-protected disk | 800 (or 640) errors ! |
| Any formatted disk | Unformatted disk | Formats+continues |
+-------------------------+-------------------------+------------------------+
Please note : Because I do not have RISC OS, I have assumed that the first two
events in the table above are true...they may not be !
Revision History of Disk Cloner
-------------------------------
Version 1.02
------------
* Each sector in a bad track is now retried and salvaged if OK.
* Memory management improved so less swaps are required if you have a disk
with many faulty tracks.
* If the destination disk is unformatted, Disk Cloner will allow the disk to
be formatted and then it continues the cloning where it was stopped.
* Disk Cloner now never 'hangs' - it can take a long time to report track
errors in certain circumstances though (this is what the ESCAPE key's for,
folks !) - especially if you try to dupe it by putting an unformatted disk
in the destination drive half-way through a disk clone...now you wouldn't
go and do a nasty thing like that would you ?
* If you get between 1 and 9 errors, the completion message now omits the
leading zero (not exactly awe-inspiring, but every little helps).
* All occurrences of the word 'disc' have been changed to 'disk'. This is just
for the sake of being consistent, but isn't funny that all my floppies are
labelled 'disks' and yet Acorn insist on calling them 'discs' ?
Version 1.01
------------
* Added D,E and L options even though I don't have RISC OS and can't test
the Extended format...
* Disk size is now displayed at the confirmation prompt just to reassure
jittery users.
* Added bad track checking during the read and write passes. Any track that
is not read during the read pass is skipped during the write pass without
any attempt to write data to that track.
* Now displays the total number of errors encountered - this is the sum of
the read errors AND the write errors.
* Still hangs on unformatted disks, but doesn't if the drive is empty or the
disk is write-protected or formatted to the wrong size. *FIXED IN V1.02*
Version 1.00
------------
* Written as a 1.5K module so that multiple disk cloning is trivial.
* Has a nasty tendency to fatally hang if the destination drive is either
empty or contains a write-protected disk. *FIXED IN V1.02*
* Checks memory intelligently so that swaps are minimised for single-drive
machines.
Future Improvements to Disk Cloner V1.02
----------------------------------------
* Check for non-standard sector sizes or densities.
NOTE : Please don't beg me to put this feature in. It DEFINITELY encourages
piracy and I find it more fun to crack disks by going through the code with
a disassembler (also means I can run the software from hard disk...).
Where to find me to report bugs or improvements to the Disk Cloner
------------------------------------------------------------------
Snail Mail JANET e-mail
---------- ------------
Richard K. Lloyd, rkl@uk.ac.liv.cs.mva
1, Banks Road,
Lower Heswall,
Wirral,
Merseyside.